package demo;

import java.util.Arrays;

/**
 * 设计方法，将其转成大驼峰/小驼峰命名法
 */
public class StringDemo03 {
    public static String datuofeng (String str) {
        //判断非空
        if (str == null) {
            return null;
        }
        //分割字符串,split()方法把数组用指定分隔符分割并放到一个数组中
        //如: str = "abcd"; str.split("");   System.out.println(str.split(""));的结果为:[a, b, c, d]
        String[] strs = str.split("_");
        String result = "";
        /**
         * 增强for循环
         * for(元素类型   变量名 : 要循环的数组或集合){
         * ……
         * }
         * 元素类型：指数组或集合中的元素的类型；
         * 变量名在循环时用来保存每个元素的值；
         * 冒号后面是要遍历的数组或集合的名称；
         */
        for (String s : strs) {
            String first = s.substring(0,1);
            first = first.toUpperCase();

            String other = s.substring(1);
            other = other.toLowerCase();
            result = result + first + other;
        }
        return result;
    }

    private static String xiaotuofeng (String str) {
        //判断非空
        if (str == null) {
            return null;
        }
        //分割字符串
        String[] strs = str.split("_");
        String result = "";
        for (int i = 0; i < strs.length; i++) {
            String first = strs[i].substring(0,1);
            if (i == 0) {
                first = first.toLowerCase();
            }else {
                first = first.toUpperCase();
            }
            String other = strs[i].substring(1);
            other = other.toLowerCase();
            result = result + first + other;
        }
        return result;
    }


    public static void main(String[] args) {
        System.out.println(datuofeng("boy_friend"));
        System.out.println(xiaotuofeng("girl_friend"));

    }
}
